package com.wish.group05.base.dto;

import java.math.BigDecimal;
import java.util.Date;

@lombok.Setter
@lombok.Getter
@lombok.ToString
public class CwCheckBatchDetailResponseDto {

	/**
     * 主键 自增
     */
    private Long id;

    /**
     * 年月日(yyyymmdd)
     */
    private String checkDay;

    /**
     * 批次号（yyyymmdd001）
     */
    private String batchNo;

    /**
     * 交易流水号，支付订单的支付订单号
     */
    private String payOrderNo;

    /**
     * 渠道订单号，支付订单中的渠道订单号
     */
    private String qudaoOrderNo;

    /**
     * 渠道名称：拉卡拉 交易渠道：暂时固定拉卡拉。
     */
    private String tradeQudao;

    /**
     * 记账凭证：支付接口回调更新支付状态的时候：已记账的才参与对账。交易流水号+100（未记账）（自动） 交易流水号+101（已记账）（自动）交易流水号+111（已记账）（手动）
     */
    private String certificateJz;

    /**
     * 对账凭证：支付接口回调更新支付状态的时候：已记账的才参与对账。交易流水号+200（未对账）（自动））,交易流水号+201（已对账）（自动）,交易流水号+211（已对账）（手动）
     */
    private String certificateDz;

    /**
     * 交易结果：接口回调或者返回的结果 1:处理中，2:成功，3:失败。
     */
    private Integer tradeResult;
    
    /**
     * 交易结果：接口回调或者返回的结果 1:处理中，2:成功，3:失败。
     */
    private String tradeResultName;

    /**
     * 交易金额：支付订单金额
     */
    private String amount;

    /**
     * 交易日期:：渠道支付时间
     */
    private String tradeDateZf;

    /**
     * 手续费：对账文件里面的手续费
     */
    private BigDecimal commissionFee;

    /**
     * 支付方式,同流水里面一样 1:微信扫码，2:支付宝扫码，3:微信公众号，4:认证支付，5:代付到银行卡
     */
    private Integer payWay;
    
    /**
     * 支付方式,同流水里面一样 1:微信扫码，2:支付宝扫码，3:微信公众号，4:认证支付，5:代付到银行卡
     */
    private String payWayName;

    /**
     * 交易账户：出端的账户如果是快捷支付：银行卡号，如果是支付宝微信扫码支付，理论上就是支付宝微信账号，H5也是微信账号。提现的时候：拉卡拉的企业账户）
     */
    private String tradeAccount;

    /**
     * 交易账户类型：暂定1:微信，2:支付宝，3:银行卡，4:拉卡拉（微信扫码和H5都是微信，支付宝扫码就是支付宝，认证就是银行卡，提现的时候是拉卡拉）
     */
    private Integer tradeAccountType;
    
    /**
     * 交易账户类型：暂定1:微信，2:支付宝，3:银行卡，4:拉卡拉（微信扫码和H5都是微信，支付宝扫码就是支付宝，认证就是银行卡，提现的时候是拉卡拉）
     */
    private String tradeAccountTypeName;

    /**
     * 对账完成时间：对账记录的创建时间
     */
    private Date checkEndDate;

    /**
     * 是否差错， 0：否， 1：是
     */
    private Boolean hasDiff;

    /**
     * 是否差错， 0：否， 1：是
     */
    private String hasDiffName;
    
    /**
     * 差错处理结果：1：未处理, 2：要结算，3：不结算，4：已处理 (对于入金，选择1，或者2来提示处理结果，出金，线下处理账款，上来标记已处理状态, 没有差错的时候为空)
     */
    private Integer processState;
    
    /**
     * 差错处理结果：1：未处理, 2：要结算，3：不结算，4：已处理 (对于入金，选择1，或者2来提示处理结果，出金，线下处理账款，上来标记已处理状态, 没有差错的时候为空)
     */
    private String processStateName;

    /**
     * 是否完成对账, 1:完成，2：未完成， 3：取消
     */
    private Integer completeState;
    
    /**
     * 是否完成对账, 1:完成，2：未完成， 3：取消
     */
    private String completeStateName;

    /**
     * 对账确认时间
     */
    private Date confirmDate;

    /**
	 *  商户可结算金额（入金的时候，可以结算给商户虚拟账户的金额，比如商户充值金额，租户缴费金额，
	 *  差错处理的时候提示信息判断用, 为0的时候，表示没有结算金额）
     */
    private BigDecimal canClearingAmount;
    
    /**
     * 备注
     */
    private String remarks;

    /**
     * 预留字段1
     */
    private BigDecimal reserve1;

    /**
     * 预留字段2
     */
    private Integer reserve2;

    /**
     * 预留字段3
     */
    private String reserve3;

    /**
     * 预留字段4
     */
    private String reserve4;

    /**
     * 预留字段5
     */
    private String reserve5;

    /**
     * 删除标识,0:未删除，1：删除
     */
    private Boolean delFlg;

    /**
     * 创建用户ID
     */
    private Long createUserid;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新用户ID
     */
    private Long updateUserid;

    /**
     * 更新时间
     */
    private Date updateTime;
	
}
